package com.qzsoft.system.modules.permission.deptJob.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.qzsoft.system.modules.permission.deptJob.dto.SysDeptJobDTO;
import com.qzsoft.system.repository.sys.entity.SysDeptEntity;
import com.qzsoft.system.repository.sys.entity.SysDeptJobEntity;
import org.apache.ibatis.annotations.Param;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * (SysDeptJob)表服务接口
 *
 * @author yzz
 * @since 2020-07-30 09:42:42
 */
public interface SysDeptJobService {
    /**
     * 数据分页
     * @param params
     * @return IPage
     */
    IPage<SysDeptJobDTO> page(Map<String, Object> params);

    /**
     * 数据列表
     * @param params
     * @return
     */
    List<SysDeptJobDTO> list(Map<String, Object> params);

    /**
     * 移动数据
     * @param params
     * @return
     */
    void moveTo(Map<String, Object> params);

    /**
     * 单个数据
     * @param id
     * @return
     */
    SysDeptJobEntity get(String id);

    /**
     * 保存
     * @param entity
     */
    void save(SysDeptJobEntity entity);

    /**
     * 保存
     * @param list
     */
    void batchSave(List<SysDeptJobEntity> list);

    /**
     * 更新
     * @param entity
     */
    void update(SysDeptJobEntity entity);

    /**
     * 批量删除
     * @param ids
     */
    void delete(String[] ids);

    /**
     * 导出Excel
     * @param params
     * @param response
     */
    void exportXls(Map<String, Object> params , HttpServletResponse response);

    Integer selectCount(SysDeptJobEntity dto);

}